#coding:utf8
from pyspark import SparkContext,SparkConf

if __name__ == '__main__':
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    sc = SparkContext(conf=conf)

    rdd = sc.parallelize([1,3,2,5,3,6,8,4,2,4,5,1],3)

    # 排序后取出前n个数据，与top()不一样的是，takeOrder()可以正序和倒序）
    print(rdd.takeOrdered(3))   #正序

    print(rdd.takeOrdered(3,lambda x:-x)) #倒序，但不会影响数据本身